/*
 *------------------------------------------------------------------------------
 * @File      :    ei_mai_nna.h
 * @Date      :    2021-4-8
 * @Author    :    lomboswer <lomboswer@lombotech.com>
 * @Brief     :    Media Interface for MADP(Media Development Platform).
 *
 * Copyright (C) 2020-2021, LomboTech Co.Ltd. All rights reserved.
 *------------------------------------------------------------------------------
 */

#ifndef __EI_NNA_HUM_TRK_DEFINE_H__
#define __EI_NNA_HUM_TRK_DEFINE_H__

#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */

#include "ei_nna_hd_define.h"

#define DEFAULT_NNA_HUM_TRK_CONFIG_MODE (1)
#define DEFAULT_NNA_HUM_TRK_CONFIG_THRESH (50)
#define DEFAULT_NNA_HUM_TRK_CONFIG_MAX_TRACK_FRAME (5)
#define DEFAULT_NNA_HUM_TRK_CONFIG_MAX_TRACK_HUM (30)

#define DEFAULT_NNA_HUM_TRK_CONFIG_NEW_TARGET_THRESH (90.0f)
#define DEFAULT_NNA_HUM_TRK_CONFIG_MATCH_THRESH (0.7f)
#define DEFAULT_NNA_HUM_TRK_CONFIG_MAX_LOST_HOLD_NUM (10)
#define DEFAULT_NNA_HUM_TRK_CONFIG_LOST_HOLD_REMATCH_THRESH (0.15f)

typedef struct eiNNA_HUM_TRK_CONFIG_S {
	EI_CHAR *ModelRootPath;

	EI_S32 s32Width;
	EI_S32 s32Height;

	EI_S32 s32MaxTrkHum;
	EI_S32 s32TrkMode;
	EI_S32 s32TrkThresh;
	EI_S32 s32MaxTrkFrame;

	EI_FLOAT f32NewTargetThresh; /*add new target when detect score>new_target_thresh*/
	EI_FLOAT f32MatchThresh; /* 0.2-1.0f */

	EI_S32 s32MaxLostHoldNum; /* 0-100 */
	EI_FLOAT f32LostHoldRematchThresh; /* 0-1 */

	EI_S32 s32SaveLastBuffer; /*0: disable 1: enable(default)*/
	EI_S32 s32MaxVisualTkRunNum; /* 0 -20 */
	EI_S32 s32VisualTkBaseSize; /* 32 -100 */

} EI_NNA_HUM_TRK_CONFIG_S;

typedef EI_S32 NNA_HT_CHN;
typedef EI_NNA_HUM_TRK_CONFIG_S EI_NNA_HT_CONFIG_S;
typedef EI_NNA_HUMANS_S EI_NNA_SRC_HT_S;
typedef EI_NNA_HUMANS_S EI_NNA_DST_HT_S;

#ifdef __cplusplus
}
#endif

#endif /* __EI_NNA_HUM_TRK_DEFINE_H__ */

